#ifndef  SUBSTATE_H
#define  SUBSTATE_H

#include "State.h"

class LightsSystem;
class RedState : public State {
public:
    RedState();
    virtual ~RedState();
    virtual void on();
    virtual void off();
    virtual void onTimeout(LightsSystem * ls);
};

class YellowState : public State {
public:
    YellowState();
    virtual ~YellowState();
    virtual void on();
    virtual void off();
    virtual void onTimeout(LightsSystem * ls);
};

class GreenState : public State {
public:
    GreenState();
    virtual ~GreenState();
    virtual void on();
    virtual void off();
    virtual void onTimeout(LightsSystem * ls);
};

#endif   /* SUBSTATE_H */
